<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">

	<xsl:template match="/">
		<xsl:apply-templates select="control" />
	</xsl:template>

	<xsl:template match="row">
		<xsl:param name="pai"/>
		<xsl:if test="parentId=$pai">
			<xsl:value-of select="name"/>
			<xsl:call-template name="gol">
				<xsl:with-param name="max"><xsl:value-of select="gols" /></xsl:with-param>
				<xsl:with-param name="curCount">1</xsl:with-param>
			</xsl:call-template>
			<br/>
			
			<xsl:apply-templates select="../row">
				<xsl:with-param name="pai">
					<xsl:value-of select="id"/>
				</xsl:with-param>
			</xsl:apply-templates>
			
		</xsl:if>
	</xsl:template>
	
	<xsl:template name="gol">
		<xsl:param name="max" />
		<xsl:param name="curCount" />
		
		<xsl:if test="$curCount &lt;= $max">
			@
			<xsl:call-template name="gol">
				<xsl:with-param name="max"><xsl:value-of select="$max" /></xsl:with-param>
				<xsl:with-param name="curCount"><xsl:value-of select="$curCount+1" /></xsl:with-param>
			</xsl:call-template>
		</xsl:if>
	</xsl:template>
	
</xsl:stylesheet>